package com.jctrip.hotel.source.model.elong.resp.offline;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * @Author: zxy
 * @CreateTime: 2023-09-07 09:59
 * @Description:
 */
@Data
@ApiModel("静态城市数据-返回体")
public class ElongQueryCityResp implements Serializable {
    @ApiModelProperty("城市数量")
    @JsonProperty(value = "Count")
    private Integer count;

    @ApiModelProperty("城市列表")
    @JsonProperty(value = "Citys")
    private List<City> citys;

    @Data
    @ApiModel("城市对象")
    @NoArgsConstructor
    public static class City implements Serializable {
        @ApiModelProperty("城市ID")
        @JsonProperty("CityId")
        private String cityId;

        @ApiModelProperty("城市中文名称")
        @JsonProperty("CityName")
        private String cityName;

        @ApiModelProperty("城市英文名称")
        @JsonProperty("CityNameEn")
        private String cityNameEn;

        @ApiModelProperty("城市纬度")
        @JsonProperty("CityLatitude")
        private String cityLatitude;

        @ApiModelProperty("城市经度")
        @JsonProperty("CityLongitude")
        private String cityLongitude;

        @ApiModelProperty("省份ID")
        @JsonProperty("ProvinceId")
        private String provinceID;

        @ApiModelProperty("省份中文名称")
        @JsonProperty("ProvinceName")
        private String provinceName;

        @ApiModelProperty("省份英文名称")
        @JsonProperty("ProvinceNameEn")
        private String provinceNameEn;

        @ApiModelProperty("国家ID")
        @JsonProperty("CountryId")
        private String countryID;

        @ApiModelProperty("国家编码")
        @JsonProperty("CountryCode")
        private String countryCode;

        @ApiModelProperty("国家中文名称")
        @JsonProperty("CountryName")
        private String countryName;

        @ApiModelProperty("国家英文名称")
        @JsonProperty("CountryNameEn")
        private String countryNameEn;

        @ApiModelProperty("Location数据列表")
        @JsonProperty("Locations")
        private List<Location> locations;
    }


    @Data
    @ApiModel("Location数据对象")
    public static class Location implements Serializable {
        @ApiModelProperty("LocationID")
        @JsonProperty("LocationID")
        private String locationID;

        @ApiModelProperty("Location中文名称")
        @JsonProperty("LocationName")
        private String locationName;

        @ApiModelProperty("Location英文名称")
        @JsonProperty("LocationNameEn")
        private String locationNameEn;

        @ApiModelProperty("Location类型(1:行政区,2:商圈,3:标示物)")
        @JsonProperty("LocationType")
        private Integer locationType;
    }
}
